Overview
This course on how to incorporate direct manipulation interfaces
into their 3D applications covers the basics of manipulator design
and implementation, and advanced topics such as robust input
processing, modular construction, and constraint handling.
Prerequisites
Module 1: Basic knowledge of user interface design ideas.
Familiarity with terms such as "affordances" and "modes." Some
high-school mathematics. Module 2: Familiarity with basic scenegraph
concepts, coordinate systems and transformations, and
fundamentals of programming interactive applications (such as
picking, selection, and dragging).
Topics
The primary focus is on manipulators for affine transformations.
Other topics include: design issues such as using modes, creating
a consistent graphic language, dealing with visibility and collision,
and choosing useful interaction behavior. The implementation
module covers issues such as the relationship between the
manipulator and the model, projecting input events onto geometric
shapes, locate highlighting, maintaining geometric integrity, and
constraining motion.
Course #20 Notes (PDF, 5.7MB) |